import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import LanguageDetector from 'i18next-browser-languagedetector';

// 导入语言资源
import zhCN from './locales/zh-CN.json';
import enUS from './locales/en-US.json';

const resources = {
  'zh-CN': {
    translation: zhCN
  },
  'en-US': {
    translation: enUS
  }
};

i18n
  .use(LanguageDetector) // 自动检测语言
  .use(initReactI18next) // 初始化 react-i18next
  .init({
    resources,
    
    // 默认语言
    fallbackLng: 'zh-CN',
    
    // 调试模式
    debug: false,
    
    // 语言检测选项
    detection: {
      order: ['localStorage', 'navigator', 'htmlTag'],
      caches: ['localStorage'],
    },
    
    interpolation: {
      escapeValue: false, // React 已经进行了 XSS 保护
    },
    
    // 命名空间
    defaultNS: 'translation',
    
    // React 特定选项
    react: {
      useSuspense: false,
    },
  });

export default i18n;